172 research outputs found
Paired and altruistic kidney donation in the UK: Algorithms and experimentation
We study the computational problem of identifying optimal sets of kidney exchanges in the UK. We show how to expand an integer programming-based formulation due to Roth et al. [2007] in order to model the criteria that constitute the UK definition of optimality. The software arising from this work has been used by the National Health Service Blood and Transplant to find optimal sets of kidney exchanges for their National Living Donor Kidney Sharing Schemes since July 2008. We report on the characteristics of the solutions that have been obtained in matching runs of the scheme since this time. We then present empirical results arising from experiments on the real datasets that stem from these matching runs, with the aim of establishing the extent to which the particular optimality criteria that are present in the UK influence the structure of the solutions that are ultimately computed. A key observation is that allowing four-way exchanges would be likely to lead to a moderate number of additional transplants
Modelling and Solving the Stable Marriage Problem Using Constraint Programming
We study the Stable Marriage problem (SM), which is a combinatorial problem that arises in many practical applications. We present two new models of an instance I of SM with n men and n women as an instance J of a Constraint Satisfaction Problem. We prove that establishing arc consistency in J yields the same structure as given by the established Extended Gale/Shapley algorithm for SM as applied to I. Consequently, a solution (stable matching) of I can be derived without search. Furthermore we show that, in both encodings, all stable matchings in I may be enumerated in a failure-free manner. Our first encoding is of O(n^3) complexity and is very natural, whilst our second model, of O(n^2) complexity (which is optimal), is a development of the Boolean encoding in [6], establishing a greater level of structure
Student-Project Allocation with Preferences over Projects
We study the problem of allocating students to projects, where both students
and lecturers have preferences over projects, and both projects and lecturers
have capacities. In this context we seek a stable matching of students
to projects, which respects these preference and capacity constraints. Here,
the stability definition generalises the corresponding notion in the context of
the classical Hospitals / Residents problem. We show that stable matchings
can have different sizes, and the problem of finding a maximum cardinality
stable matching is NP-hard, though approximable within a factor of 2
An integer programming approach to the Hospitals/Residents problem with ties
The classical Hospitals/Residents problem (HR) models the assignment of junior doctors to hospitals based on their preferences over one another. In an instance of this problem, a stable matching M is sought which ensures that no blocking pair can exist in which a resident r and hospital h can improve relative to M by becoming assigned to each other. Such a situation is undesirable as it could naturally lead to r and h forming a private arrangement outside of the matching. The original HR model assumes that preference lists are strictly ordered. However in practice, this may be an unreasonable assumption: an agent may find two or more agents equally acceptable, giving rise to ties in its preference list. We thus obtain the Hospitals/Residents problem with Ties (HRT). In such an instance, stable matchings may have different sizes and MAX HRT, the problem of finding a maximum cardinality stable matching, is NP-hard. In this paper we describe an Integer Programming (IP) model for MAX HRT. We also provide some details on the implementation of the model. Finally we present results obtained from an empirical evaluation of the IP model based on real-world and randomly generated problem instances
Editorial: special issue on matching under preferences
This special issue of Algorithms is devoted to the study of matching problems
involving ordinal preferences from the standpoint of algorithms and complexit
Popular Matchings in the Weighted Capacitated House Allocation Problem
We consider the problem of finding a popular matching in the Weighted Capacitated
House Allocation problem (WCHA). An instance of WCHA involves a set of agents
and a set of houses. Each agent has a positive weight indicating his priority, and a
preference list in which a subset of houses are ranked in strict order. Each house has
a capacity that indicates the maximum number of agents who could be matched to
it. A matching M of agents to houses is popular if there is no other matching M′
such that the total weight of the agents who prefer their allocation in M′
to that in
M exceeds the total weight of the agents who prefer their allocation in M to that in
M′
. Here, we give an O(
√
Cn1 + m) algorithm to determine if an instance of WCHA
admits a popular matching, and if so, to find a largest such matching, where C is the
total capacity of the houses, n1 is the number of agents, and m is the total length of
the agents’ preference lists
- …